package com.dkm.orproject.dkmoa.dao;

import com.dkm.orproject.dkmoa.domain.OaSupplier;
import com.dkm.orproject.dkmoa.domain.OaSupplierType;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
/**
 *  @ClassName : OaSupplierTypeMapper  //类名
 *  @Description : 供应商类型类dao层 操作数据库实体类
 *  @Author : zmh //作者
 *  @Date: 2020-11-24 16:28  //时间
 */
@Mapper
public interface OaSupplierTypeMapper {

    /**
     * 根据pkSupplierTypeId查询删除该条供应商类型数据
     * @param pkSupplierTypeId
     * @return 回调函数
     */
    int deleteByPrimaryKey(Long pkSupplierTypeId);

    /**
     * 插入供应商类型数据
     * @param oaSupplierType 供应商类型对象
     */
    int insertSelective(OaSupplierType oaSupplierType);

    /**
     * 根据pkRegimeTypeId查询供应商类型数据
     * @param pkSupplierTypeId
     * @return 供应商类型对象
     */
    OaSupplierType selectByPrimaryKey(Long pkSupplierTypeId);

    /**
     * 根据oaRegimeType的id值查询然后修改该条数据
     * @param oaSupplierType
     */
    int updateByPrimaryKeySelective(OaSupplierType oaSupplierType);

    /**
     * 查询供应商类型数据总条数
     * @param oaSupplierType 规则制度对象
     * @param startTime 开始时间
     * @param endTime 结束时间
     */
    Long rowCount(@Param("oaSupplierType")OaSupplierType oaSupplierType,@Param("startDate")String startTime,@Param("endDate")String endTime);

    /**
     * 分页查询所有供应商类型信息数据
     * @param oaSupplierType
     * @param startTime 开始时间
     * @param endTime 结束时间
     * @return 所有供应商类型对象的集合
     */
    List<OaSupplierType> selectAll(@Param("oaSupplierType") OaSupplierType oaSupplierType, @Param("startDate")String startTime,@Param("endDate")String endTime);

    /**
     * 根据list存入的id批量删除供应商类型数据
     * @param list list里存入id的集合
     */
    int deleteAll(List<Long> list);


    /**
     * 查询所有
     * @param oaSupplierTypeId 供应商类型id值
     * @return 客户类型集合
     */
    List<OaSupplierType> loadOaSupplierType(@Param("oaSupplierTypeId")Long oaSupplierTypeId);

}